package com.example.hao.mvp.mvp.presenter;


import com.example.hao.mvp.mvp.model.IMainModel;
import com.example.hao.mvp.mvp.model.MainModel;
import com.example.hao.mvp.mvp.view.IMainView;
import com.example.hao.mvp.pojo.ResultData;
import com.example.hao.mvp.pojo.User;

public class MainPresenter implements IMainPresenter {

    private static String TAG = "Hao";
    //Presenter 持有两个引用
    private IMainView view ;
    private IMainModel model;


    public MainPresenter(IMainView view) {
        this.view = view;
        this.model = new MainModel();
    }

    @Override
    public void register(String user, String psw) {

    }

    @Override
    public void login(String userName, String psw) {
        model.login(userName, psw, new IMainModel.OnCallBack() {
            @Override
            public void OnSuccess(ResultData<User> resultData) {
                if ("9999".equals(resultData.getCode())){
                    User data = resultData.getData();
                    if (data != null){
                        view.updateUserInfo(data);
                    }
                }else if ("1007".equals(resultData.getCode())){
                    view.showErrInfo(0,resultData.getMsg());
                }

            }

            @Override
            public void OnFailing(Throwable e) {

            }
        });
    }


//    @Override
//    public void login(String user, String psw) {
//
//        //对 user , psw  数据安全 判断 过滤处理.
//
//        model.login(user, psw, new IMainModel.OnLoadCallback() {
//            @Override
//            public void onSuccess(ResultData<User> resultData) {
//                if ("9999".equals(resultData.getCode())) {
//                    User data = resultData.getData();
//                    if (data != null)
//                        view.updateUserInfo(data);
//
//
//                } else if ("1007".equals(resultData.getCode())) {
//                    //失败的逻辑处理
//                    view.showErrorInfo(0, resultData.getMsg());
//                }
//            }
//
//            @Override
//            public void onFaild(Throwable e) {
//
//            }
//        });
//    }
}
